package com.css.datasourceSwitch;

import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;

/**
 * @author Dbj
 * @date 2024年09月24日  19:43
 * 接收消息根据消息信息切换数据源
 */
public class MessageDataSourceSwitch {
    /**
     * 消息接收动态切换数据源  传递的是传递消息的操作人所在的省iD
     */
    public static String messageDataSourceSwitch(Integer provinceId){
        String dataSourceKey = "province_";
        if(ObjectUtils.isEmpty(provinceId)){
            //国家
            dataSourceKey+="11";
        }else{
            dataSourceKey+=provinceId;
        }
        // 切换到省份数据源
        DynamicDataSourceContextHolder.push(dataSourceKey);
        return DynamicDataSourceContextHolder.peek();
    }
    /**
     *  清除数据源，回到默认数据源
     */
    public static void clearDataSource(){
        DynamicDataSourceContextHolder.clear();
    }
}
